<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>SPHinXsys: SPHINXsys/src/shared/common/vector_functions.cpp File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">SPHinXsys
   &#160;<span id="projectnumber">alpha version</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_3dc1dabd28ba78e072d14d3fcfc90454.html">SPHINXsys</a></li><li class="navelem"><a class="el" href="dir_48ea983704c43b6d88c1fa3f4d09e369.html">src</a></li><li class="navelem"><a class="el" href="dir_0a0d9ef1793521534f0094f317758287.html">shared</a></li><li class="navelem"><a class="el" href="dir_4b0a73e0e85ea3fdcd68e2975aa1af86.html">common</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">vector_functions.cpp File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;vector_functions.h&quot;</code><br />
<code>#include &lt;Eigen/Eigenvalues&gt;</code><br />
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_s_p_h"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html">SPH</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a486bec69fe0fc527416088bc9473a94a"><td class="memItemLeft" align="right" valign="top"><a id="a486bec69fe0fc527416088bc9473a94a"></a>
Vec2d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::FirstAxisVector</b> (const Vec2d &amp;zero_vector)</td></tr>
<tr class="separator:a486bec69fe0fc527416088bc9473a94a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab00425e8f9087ec1a7563ed7518ca9c3"><td class="memItemLeft" align="right" valign="top"><a id="ab00425e8f9087ec1a7563ed7518ca9c3"></a>
Vec3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::FirstAxisVector</b> (const Vec3d &amp;zero_vector)</td></tr>
<tr class="separator:ab00425e8f9087ec1a7563ed7518ca9c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a64ffb9f8955b4cec91d07071a0c556"><td class="memItemLeft" align="right" valign="top"><a id="a1a64ffb9f8955b4cec91d07071a0c556"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getMaxAbsoluteElement</b> (const Vec2d &amp;input)</td></tr>
<tr class="separator:a1a64ffb9f8955b4cec91d07071a0c556"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b068c479f21ad0b293669aa697742ae"><td class="memItemLeft" align="right" valign="top"><a id="a8b068c479f21ad0b293669aa697742ae"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getMaxAbsoluteElement</b> (const Vec3d &amp;input)</td></tr>
<tr class="separator:a8b068c479f21ad0b293669aa697742ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a996dc88ec4e34d6f9114f0cf81b92015"><td class="memItemLeft" align="right" valign="top"><a id="a996dc88ec4e34d6f9114f0cf81b92015"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getMinAbsoluteElement</b> (const Vec2d &amp;input)</td></tr>
<tr class="separator:a996dc88ec4e34d6f9114f0cf81b92015"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a99d47f4c362a272eebe6153e3b396eae"><td class="memItemLeft" align="right" valign="top"><a id="a99d47f4c362a272eebe6153e3b396eae"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getMinAbsoluteElement</b> (const Vec3d &amp;input)</td></tr>
<tr class="separator:a99d47f4c362a272eebe6153e3b396eae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a351961c2f04ff3760c6bbf102aacb19d"><td class="memItemLeft" align="right" valign="top"><a id="a351961c2f04ff3760c6bbf102aacb19d"></a>
Vec3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::upgradeToVector3D</b> (const <a class="el" href="class_real.html">Real</a> &amp;input)</td></tr>
<tr class="separator:a351961c2f04ff3760c6bbf102aacb19d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c2ff832dd07b930b97a8a68245520ec"><td class="memItemLeft" align="right" valign="top"><a id="a1c2ff832dd07b930b97a8a68245520ec"></a>
Vec3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::upgradeToVector3D</b> (const Vec2d &amp;input)</td></tr>
<tr class="separator:a1c2ff832dd07b930b97a8a68245520ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a734bc445b8ded8e713825920c977f8d9"><td class="memItemLeft" align="right" valign="top"><a id="a734bc445b8ded8e713825920c977f8d9"></a>
Vec3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::upgradeToVector3D</b> (const Vec3d &amp;input)</td></tr>
<tr class="separator:a734bc445b8ded8e713825920c977f8d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89851bc21ce4a7458dd6eb8b4610b1ab"><td class="memItemLeft" align="right" valign="top"><a id="a89851bc21ce4a7458dd6eb8b4610b1ab"></a>
Mat3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::upgradeToMatrix3D</b> (const Mat2d &amp;input)</td></tr>
<tr class="separator:a89851bc21ce4a7458dd6eb8b4610b1ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abafe466ce19d404a71975ddf9c6d3635"><td class="memItemLeft" align="right" valign="top"><a id="abafe466ce19d404a71975ddf9c6d3635"></a>
Mat3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::upgradeToMatrix3D</b> (const Mat3d &amp;input)</td></tr>
<tr class="separator:abafe466ce19d404a71975ddf9c6d3635"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ece12bfbabf0c8e93353704e47a6c92"><td class="memItemLeft" align="right" valign="top"><a id="a1ece12bfbabf0c8e93353704e47a6c92"></a>
Mat2d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getInverse</b> (const Mat2d &amp;A)</td></tr>
<tr class="separator:a1ece12bfbabf0c8e93353704e47a6c92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fbedc9bad73dd71e73dda6e5f0fa366"><td class="memItemLeft" align="right" valign="top"><a id="a8fbedc9bad73dd71e73dda6e5f0fa366"></a>
Mat3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getInverse</b> (const Mat3d &amp;A)</td></tr>
<tr class="separator:a8fbedc9bad73dd71e73dda6e5f0fa366"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43f540e47e0646a6e3d685019a62afd4"><td class="memItemLeft" align="right" valign="top"><a id="a43f540e47e0646a6e3d685019a62afd4"></a>
Mat2d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getAverageValue</b> (const Mat2d &amp;A, const Mat2d &amp;B)</td></tr>
<tr class="separator:a43f540e47e0646a6e3d685019a62afd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae6cc53a968430e378f64175361a8052"><td class="memItemLeft" align="right" valign="top"><a id="aae6cc53a968430e378f64175361a8052"></a>
Mat3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getAverageValue</b> (const Mat3d &amp;A, const Mat3d &amp;B)</td></tr>
<tr class="separator:aae6cc53a968430e378f64175361a8052"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8398545c27193350527fd37c5ce8a346"><td class="memItemLeft" align="right" valign="top">Mat2d&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#a8398545c27193350527fd37c5ce8a346">SPH::inverseCholeskyDecomposition</a> (const Mat2d &amp;A)</td></tr>
<tr class="separator:a8398545c27193350527fd37c5ce8a346"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d7c2cb8fd240d138461de7e5023f01d"><td class="memItemLeft" align="right" valign="top">Mat3d&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#a7d7c2cb8fd240d138461de7e5023f01d">SPH::inverseCholeskyDecomposition</a> (const Mat3d &amp;A)</td></tr>
<tr class="separator:a7d7c2cb8fd240d138461de7e5023f01d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9177d13d8704721ba24c306574c3d5b"><td class="memItemLeft" align="right" valign="top">Mat2d&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#aa9177d13d8704721ba24c306574c3d5b">SPH::getTransformationMatrix</a> (const Vec2d &amp;direction_of_y)</td></tr>
<tr class="separator:aa9177d13d8704721ba24c306574c3d5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a914e5416789b42e22ecf88ca8b334e50"><td class="memItemLeft" align="right" valign="top"><a id="a914e5416789b42e22ecf88ca8b334e50"></a>
Mat3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getTransformationMatrix</b> (const Vec3d &amp;direction_of_z)</td></tr>
<tr class="separator:a914e5416789b42e22ecf88ca8b334e50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6a446e041d49118d5d5d371a7f023a2"><td class="memItemLeft" align="right" valign="top"><a id="af6a446e041d49118d5d5d371a7f023a2"></a>
Mat2d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getDiagonal</b> (const Mat2d &amp;A)</td></tr>
<tr class="separator:af6a446e041d49118d5d5d371a7f023a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff8c14c8cd4391c44af13a5576e1b54e"><td class="memItemLeft" align="right" valign="top"><a id="aff8c14c8cd4391c44af13a5576e1b54e"></a>
Mat3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getDiagonal</b> (const Mat3d &amp;A)</td></tr>
<tr class="separator:aff8c14c8cd4391c44af13a5576e1b54e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad528837a1fb93b7114c349632c8889a4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#ad528837a1fb93b7114c349632c8889a4">SPH::CalculateDoubleDotProduct</a> (Mat2d Matrix1, Mat2d Matrix2)</td></tr>
<tr class="separator:ad528837a1fb93b7114c349632c8889a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19cd35166450b05f49de59749a2941ec"><td class="memItemLeft" align="right" valign="top"><a id="a19cd35166450b05f49de59749a2941ec"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::CalculateDoubleDotProduct</b> (Mat3d Matrix1, Mat3d Matrix2)</td></tr>
<tr class="separator:a19cd35166450b05f49de59749a2941ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68058077020fd2d3c14303a89d342726"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#a68058077020fd2d3c14303a89d342726">SPH::getCosineOfAngleBetweenTwoVectors</a> (const Vec2d &amp;vector_1, const Vec2d &amp;vector_2)</td></tr>
<tr class="separator:a68058077020fd2d3c14303a89d342726"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24355ee47552d6905e31e66aa91c17b5"><td class="memItemLeft" align="right" valign="top"><a id="a24355ee47552d6905e31e66aa91c17b5"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getCosineOfAngleBetweenTwoVectors</b> (const Vec3d &amp;vector_1, const Vec3d &amp;vector_2)</td></tr>
<tr class="separator:a24355ee47552d6905e31e66aa91c17b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a229652ff9b21233afcccf41f920cccb7"><td class="memItemLeft" align="right" valign="top">Vec2d&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#a229652ff9b21233afcccf41f920cccb7">SPH::getVectorProjectionOfVector</a> (const Vec2d &amp;vector_1, const Vec2d &amp;vector_2)</td></tr>
<tr class="separator:a229652ff9b21233afcccf41f920cccb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4dcb18a3dce2f6cec15f8c9b4532139a"><td class="memItemLeft" align="right" valign="top"><a id="a4dcb18a3dce2f6cec15f8c9b4532139a"></a>
Vec3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getVectorProjectionOfVector</b> (const Vec3d &amp;vector_1, const Vec3d &amp;vector_2)</td></tr>
<tr class="separator:a4dcb18a3dce2f6cec15f8c9b4532139a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaefe19205a6a860024664f2dc717aa90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#aaefe19205a6a860024664f2dc717aa90">SPH::getVonMisesStressFromMatrix</a> (const Mat2d &amp;sigma)</td></tr>
<tr class="separator:aaefe19205a6a860024664f2dc717aa90"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0352fdc921bc4231a2ae8f719b6f18bb"><td class="memItemLeft" align="right" valign="top"><a id="a0352fdc921bc4231a2ae8f719b6f18bb"></a>
<a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getVonMisesStressFromMatrix</b> (const Mat3d &amp;sigma)</td></tr>
<tr class="separator:a0352fdc921bc4231a2ae8f719b6f18bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af55e3affa929cbeed82e44201ef46215"><td class="memItemLeft" align="right" valign="top">Vec2d&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#af55e3affa929cbeed82e44201ef46215">SPH::getPrincipalValuesFromMatrix</a> (const Mat2d &amp;A)</td></tr>
<tr class="separator:af55e3affa929cbeed82e44201ef46215"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0b7b9c38fbf4599b17eb804338b6b27"><td class="memItemLeft" align="right" valign="top"><a id="ad0b7b9c38fbf4599b17eb804338b6b27"></a>
Vec3d&#160;</td><td class="memItemRight" valign="bottom"><b>SPH::getPrincipalValuesFromMatrix</b> (const Mat3d &amp;A)</td></tr>
<tr class="separator:ad0b7b9c38fbf4599b17eb804338b6b27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a213e7142a311395e51d5d52398334de7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_real.html">Real</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_s_p_h.html#a213e7142a311395e51d5d52398334de7">SPH::MinimumDimension</a> (const BoundingBox &amp;bbox)</td></tr>
<tr class="separator:a213e7142a311395e51d5d52398334de7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><dl class="section author"><dt>Author</dt><dd>Luhui Han, Chi ZHang and Xiangyu Hu </dd></dl>
<dl class="section version"><dt>Version</dt><dd>0.1 </dd></dl>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.14
</small></address>
</body>
</html>
